In recent years, technology known as OpenFlow has been proposed (refer to Patent Literature 1, and Non-Patent Literatures 1 and 2). In OpenFlow, communication is treated as end-to-end flow, and path control, recovery from failure, load balancing, and optimization are performed per flow units. An OpenFlow switch as specified in Non-Patent Literature 2 is provided with a secure channel for communication with an OpenFlow controller, and operates according to a flow table in which appropriate addition or rewriting is instructed by the OpenFlow controller. In the flow table are definitions of sets of matching rules (Header fields) for collation with packet headers, flow statistical information (Counters), and actions (Actions) defining processing content, for each flow (refer to FIG. 24).
For example, when an OpenFlow switch receives a packet, an entry is searched for that has a matching rule (refer to header field in FIG. 24) that matches header information of the received packet, from the flow table. As a result of the search, in a case where an entry matching the received packet is found, the OpenFlow switch updates the flow statistical information (Counters) and also implements processing content (packet transmission from a specified port, flooding, dropping, and the like) described in an Actions field of the entry in question, for the received packet. On the other hand, as a result of the search, in a case where an entry matching the received packet is not found, the OpenFlow switch transmits a request for entry setting with respect to the OpenFlow controller via a secure channel, that is, a request to determine a path of the packet based on source and destination of the received packet. The OpenFlow switch receives a flow entry corresponding to the request and updates the flow table. In this way, the OpenFlow switch uses the entry stored in the flow table as a processing rule to perform packet forwarding.